import { noMustWriteDom } from './common'

export const propsTbody = [
  {
    name: 'layerActive',
    optionType: 'String',
    defaultValue: 'base',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，默认显示什么Arcgis底图，可选值有：base(白底地图)、terrain(地形图)、satellite(卫星图))')
      ])
    }
  },
  {
    name: 'defaultLayers',
    optionType: 'Array',
    defaultValue: '[]',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，可添加默认自定义图层')
      ])
    }
  },
  {
    name: 'isHideBase',
    optionType: 'Boolean',
    defaultValue: 'false',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否隐藏白底地图图层，默认不隐藏')
      ])
    }
  },
  {
    name: 'isHideTerrain',
    optionType: 'Boolean',
    defaultValue: 'false',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否隐藏地形图图层，默认不隐藏')
      ])
    }
  },
  {
    name: 'isHideSatellite',
    optionType: 'Boolean',
    defaultValue: 'false',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否隐藏卫星图图层，默认不隐藏')
      ])
    }
  },
  {
    name: 'isNeedWaterNet',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要水网图层，默认需要')
      ])
    }
  },
  {
    name: 'isNeedRoadNet',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要路网图层，默认需要')
      ])
    }
  },
  {
    name: 'isNeedClick',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要地图点击事件，默认需要，普通图标图层显示弹框信息需要该项为true')
      ])
    }
  },
  {
    name: 'isNeedSizeChange',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要 当地图发生拖拽、缩放或旋转时触发的事件，默认需要，普通图标图层显示冒泡信息需要该项为true')
      ])
    }
  },
  {
    name: 'isNeedShowModal',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要点击图标图层时，弹出信息框，默认需要')
      ])
    }
  },
  {
    name: 'isNeedScaleLine',
    optionType: 'Boolean',
    defaultValue: 'false',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要显示地图比例尺')
      ])
    }
  },
  {
    name: 'isNeedChosen',
    optionType: 'Boolean',
    defaultValue: 'true',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，是否需要显示切换 Arcgis 地图工具')
      ])
    }
  },
  {
    name: 'chosenClass',
    optionType: 'String',
    defaultValue: '""',
    desc: (h) => {
      return h('div', {}, [
        noMustWriteDom(h),
        h('span', {}, '，可能你需要调整选择底图区域的样式，这里允许你传入相对应的class名')
      ])
    }
  }

]

export const methodsTbody = [
  {
    name: 'getMap',
    parameter: '无',
    desc: '获取该地图实例'
  },
  {
    name: 'getLayers',
    parameter: '无',
    desc: '获取当前地图上的所有图层信息'
  },
  {
    name: 'addCustomLayer',
    parameter: 'ol.layer',
    desc: '添加自定义图层，必须传入一个正确的 ol.layer 图层'
  },
  {
    name: 'addLayer',
    parameter: 'Object',
    desc: '添加图层，Object里需要传入 layerName 参数，告诉方法你需要加入哪一个图层'
  },
  {
    name: 'removeLayer',
    parameter: 'Object',
    desc: '删除图层，Object里需要传入 layerName 参数，告诉方法你需要删除哪一个图层'
  },
  {
    name: 'removeCustomLayer',
    parameter: 'ol.layer',
    desc: '删除自定义图层，必须传入一个正确的 ol.layer 图层'
  },
  {
    name: 'refreshAnimate',
    parameter: 'Object',
    desc: '用作云图和雷达图刷新动画，Object里需要传入 layerName 参数，layerName可传参数cloudLayer(云图)或radarLayer()'
  }
]

export const emitTbody = [
  {
    name: 'mapOnLoad',
    returnValue: 'Map实例',
    desc: '地图实例 初始化好时触发'
  },
  {
    name: 'mapClick',
    returnValue: '该点的数据',
    desc: '当 props isNeedClick 为true，点击地图时触发，返回该点的经纬度，以及所包含的layerName和features'
  },
  {
    name: 'mapSizeChange',
    returnValue: 'event',
    desc: '当 props isNeedSizeChange 为true，地图发生旋转、移动或缩放时触发，返回当前地图的信息'
  }
]

export const slotTbody = [
  {
    name: 'loading',
    desc: '替换等待图层加载时的Loading'
  }
]

export const layerNameThead = (vm) => [
  {
    key: 'name',
    title: '图层名字',
    width: 160,
    align: 'center'
  },
  {
    key: 'layerName',
    title: '对应 layerName',
    width: 200,
    align: 'center'
  },
  {
    title: '是否可自定义',
    key: 'isCustom',
    width: 110,
    align: 'center',
    render: (h, params) => {
      const { isCustom } = params.row

      if (isCustom === '是') {
        return h('span', { style: { color: 'green' } }, isCustom)
      } else {
        return h('span', { style: { color: 'red' } }, isCustom)
      }
    }
  },
  {
    title: '说明',
    key: 'desc',
    render: (h, params) => {
      const { desc } = params.row

      if (typeof desc === 'string') {
        return h('span', {}, desc)
      }
      return desc(h, vm)
    }
  }
]

export const layerNameTbody = [
  {
    name: '水网',
    layerName: 'waterNetLayer',
    isCustom: '否',
    desc: '--'
  },
  {
    name: '路网',
    layerName: 'roadNetLayer',
    isCustom: '否',
    desc: '--'
  },
  {
    name: '气象预警',
    layerName: 'weatherWarningLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '台风路径',
    layerName: 'typhoonLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '云图',
    layerName: 'cloudLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '雷达图',
    layerName: 'radarLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '排水口',
    layerName: 'drainPortLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '堤围',
    layerName: 'banksLayer',
    isCustom: '否',
    desc: '使用堤围，必须在该项目的Static文件下引入 kml文件夹，而该文件夹在 Gykj_map 目录下'
  },
  {
    name: '险段',
    layerName: 'criticalsLayer',
    isCustom: '否',
    desc: '使用险段，必须在该项目的Static文件下引入 kml文件夹，而该文件夹在 Gykj_map 目录下'
  },
  {
    name: '堤上在建工程',
    layerName: 'dikeEngineeringLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '水闸',
    layerName: 'gateLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '泵站',
    layerName: 'pumpLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '水位站',
    layerName: 'waterLevelLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '水文站',
    layerName: 'hydrologyLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '潮位站',
    layerName: 'tideGaugeLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '江心洲',
    layerName: 'midRiverLandLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '外滩地',
    layerName: 'theBundLandLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '水库',
    layerName: 'reservoirLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '山塘',
    layerName: 'mountainPondLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '城市内涝',
    layerName: 'operatorTelecomLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '通信设施(电信)',
    layerName: 'waterLoggingCityLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '通信设施(联通)',
    layerName: 'operatorUnicomLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '通信设施(移动)',
    layerName: 'operatorMoveLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '通信设施(铁塔)',
    layerName: 'operatorTowerLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '旅游景点',
    layerName: 'tourismLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '危险化学品重点企业',
    layerName: 'dangerousGoodsLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '重要电力设施',
    layerName: 'powerFacilitiesLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '学校',
    layerName: 'schoolLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '地质灾害',
    layerName: 'hazardLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '穿堤管道(输气)',
    layerName: 'dikePipeGasLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '内涝灾害(地下停车场)',
    layerName: 'waterloggingCarLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '城建建筑工地',
    layerName: 'cityConstructionSiteLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '市政建筑工地',
    layerName: 'municipalConstructionSiteLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '码头',
    layerName: 'wharfLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '桥梁',
    layerName: 'bridgeLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '内涝灾害(隧道)',
    layerName: 'waterloggingTunnelLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '建筑工地(交通)',
    layerName: 'trafficConstructionSiteLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '简易建筑',
    layerName: 'buildingLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '危险建筑(农村危房)',
    layerName: 'ruralCrisisRoomLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '户外立式广告牌',
    layerName: 'outBillboardLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '抢险队',
    layerName: 'emergencySquadLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '救援队',
    layerName: 'rescueTeamLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '重点人员位置',
    layerName: 'liabilityPersonLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '三防专家实时位置',
    layerName: 'defenseExpertLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '村居',
    layerName: 'rusticateLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '避难所',
    layerName: 'refugeLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '物资仓库',
    layerName: 'emergencyLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '铁皮屋',
    layerName: 'ironhideHouseLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '工棚',
    layerName: 'barrackLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '其他防风敏感建筑',
    layerName: 'otherBuildLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '供水管网',
    layerName: 'supplyPipeLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '自来水厂',
    layerName: 'waterFactoryLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '供水设施',
    layerName: 'supplyDeviceLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '排水管',
    layerName: 'drainPipeLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '污水厂',
    layerName: 'dirtyFactoryLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '排水设施',
    layerName: 'drainDeviceLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '医院',
    layerName: 'hospitalLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '银行',
    layerName: 'bankLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '客运站',
    layerName: 'busStationLayer',
    isCustom: '是',
    desc: '--'
  },
  {
    name: '商场',
    layerName: 'shopLayer',
    isCustom: '是',
    desc: '--'
  }
]
